

package com.kimo.shop.service;


import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.kimo.shop.bean.dto.OrderRefundDto;
import com.kimo.shop.bean.enums.SendType;
import com.kimo.shop.bean.model.NotifyTemplate;
import com.kimo.shop.bean.model.Order;
import com.kimo.shop.bean.model.OrderRefund;
import com.kimo.shop.bean.model.User;
import com.kimo.shop.common.util.PageParam;

import java.util.List;

/**
 *
 *
 * @author kimo-taozhouchuan
 * @date 2020-07-01 15:44:27
 */
public interface NotifyTemplateService extends IService<NotifyTemplate> {

    void sendNotifyOfGroupStart(Order order, SendType groupStart);

    void sendNotifyOfPaySuccess(List<Order> orders);

    void sendNotifyOfApplyRefund(Order order, OrderRefund orderRefund);

    void sendNotifyByRefund(OrderRefundDto orderRefundDto, SendType agreeRefund);

    void sendNotifyOfDelivery(Order order, String dvyName, SendType sendType);

    void sendNotifyOfLevelUp(String levelName, User user);

    void saveTagNotify(NotifyTemplate notifyTemplate);

    IPage<NotifyTemplate> pageTagNotify(PageParam<NotifyTemplate> page);
    void sendNotifyByUserRefundDelivery(Order order, SendType returnRefund);
    void writeOffOrder(String stationName, Order order);
}
